#pragma once

#include <vector>
#include <string>
#include <glm/glm.hpp>


struct Vertex
{
    glm::vec3 pos;
    glm::vec2 texCoord;
    glm::vec3 normal;
    glm::vec3 color;
};

struct Mesh
{
    std::vector<glm::vec3> vertices;
    std::vector<glm::vec2> texCoords;
    std::vector<glm::vec3> normals;
    std::vector<int> indices;

    uint32_t numVertices() const { return (uint32_t)vertices.size(); }
};


bool loadObj(const std::string& filePath, Mesh& mesh);

